options = -g -Wall -pedantic
ssdl = `sdl-config --cflags --libs`
sttf = -lSDLmain -lSDL -lSDL_ttf
endbin = bin/
endobj = obj/
endsrc = src/

all: $(endbin)main $(endbin)maintestregression


$(endbin)maintestregression: $(endobj)maintestregression.o $(endobj)Jeu.o $(endobj)Terrain.o $(endobj)Cases.o $(endobj)Unite.o $(endobj)Joueur.o $(endobj)SDL_image.o $(endobj)SDL_Jeu.o
	gcc $(endobj)maintestregression.o $(endobj)Jeu.o $(endobj)Terrain.o $(endobj)Cases.o $(endobj)Unite.o $(endobj)Joueur.o $(endobj)SDL_image.o $(endobj)SDL_Jeu.o $(ssdl) $(sttf) -g -o $(endbin)maintestregression

$(endbin)main: $(endobj)main.o $(endobj)Jeu.o $(endobj)Terrain.o $(endobj)Cases.o $(endobj)Unite.o $(endobj)Joueur.o $(endobj)SDL_image.o $(endobj)SDL_Jeu.o
	gcc $(endobj)main.o $(endobj)Jeu.o $(endobj)Terrain.o $(endobj)Cases.o $(endobj)Unite.o $(endobj)Joueur.o $(endobj)SDL_image.o $(endobj)SDL_Jeu.o $(ssdl) $(sttf) -o $(endbin)main

$(endobj)main.o: $(endsrc)main.c $(endsrc)SDL_Jeu.h
	gcc $(options) -c $(endsrc)main.c $(ssdl) $(sttf) -o $(endobj)main.o
	
$(endobj)maintestregression.o: $(endsrc)maintestregression.c $(endsrc)SDL_Jeu.h
	gcc $(options) -c $(endsrc)maintestregression.c $(ssdl) $(sttf) -o $(endobj)maintestregression.o
	
$(endobj)SDL_Jeu.o: $(endsrc)SDL_Jeu.c $(endsrc)SDL_Jeu.h $(endsrc)Jeu.h
	gcc $(options) -c $(endsrc)SDL_Jeu.c $(ssdl) $(sttf) -o $(endobj)SDL_Jeu.o

$(endobj)Jeu.o: $(endsrc)Jeu.c $(endsrc)Jeu.h $(endsrc)Terrain.h $(endsrc)Joueur.h
	gcc $(options) -c $(endsrc)Jeu.c $(ssdl) $(sttf) -o $(endobj)Jeu.o
	
$(endobj)Terrain.o: $(endsrc)Terrain.c $(endsrc)Terrain.h $(endsrc)Cases.h
	gcc $(options) -c $(endsrc)Terrain.c $(ssdl) $(sttf) -o $(endobj)Terrain.o
	
$(endobj)Cases.o: $(endsrc)Cases.c $(endsrc)Cases.h $(endsrc)Unite.h
	gcc $(options) -c $(endsrc)Cases.c $(ssdl) $(sttf) -o $(endobj)Cases.o
	
$(endobj)Unite.o: $(endsrc)Unite.c $(endsrc)Unite.h 
	gcc $(options) -c $(endsrc)Unite.c $(ssdl) $(sttf) -o $(endobj)Unite.o
	
$(endobj)Joueur.o: $(endsrc)Joueur.c $(endsrc)Joueur.h 
	gcc $(options) -c $(endsrc)Joueur.c $(ssdl) $(sttf) -o $(endobj)Joueur.o

$(endobj)SDL_image.o: $(endsrc)SDL_image.c $(endsrc)SDL_image.h 
	gcc $(options) -c $(endsrc)SDL_image.c $(ssdl) $(sttf) -o $(endobj)SDL_image.o	
clean:
	rm obj/* bin/*
